﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace FrontEndPlus.Módulos.Catálogos_y_Mantenimientos
{
    public partial class wbfrm_Cambio_Empleados : System.Web.UI.Page
    {
        #region Variables

        private WCF_Gimnasio.cls_Empleado _empleado = new WCF_Gimnasio.cls_Empleado();
        private WCF_Gimnasio.cls_Tipo_Empleado _tipoempleado = new WCF_Gimnasio.cls_Tipo_Empleado();
        private WCF_Gimnasio.cls_Departamento _departamento = new WCF_Gimnasio.cls_Departamento();
        private WCF_Gimnasio.cls_Gimnasio _gimnasio = new WCF_Gimnasio.cls_Gimnasio();
        private WCF_Gimnasio.cls_Carrera_Profesional _carreraempleado = new WCF_Gimnasio.cls_Carrera_Profesional();
        private WCF_Gimnasio.ServiceClient _servicio = new WCF_Gimnasio.ServiceClient();

        #endregion

        #region Metodos



        #endregion

        #region Eventos

        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                if (!IsPostBack)
                {
                    _empleado = (WCF_Gimnasio.cls_Empleado)CargarPagina.SeleccionarObjeto("Empleado");

                    _tipoempleado.IdUsuarioInicioSeccion = Convert.ToInt32(Session["idUSuario"]);
                    ddl_TipoEmpleado.DataTextField = "DESCRIPCION";
                    ddl_TipoEmpleado.DataValueField = "ID_TIPO_EMPLEADO";
                    ddl_TipoEmpleado.DataSource = _servicio.Listar(3, _tipoempleado).Tables[0];
                    ddl_TipoEmpleado.DataBind();

                    _departamento.IdUsuarioInicioSeccion = Convert.ToInt32(Session["idUSuario"]);
                    ddl_Departamento.DataTextField = "NOMBRE_DEPARTAMENTO";
                    ddl_Departamento.DataValueField = "ID_DEPARTAMENTO";
                    ddl_Departamento.DataSource = _servicio.Listar(3, _departamento).Tables[0];
                    ddl_Departamento.DataBind();

                    _gimnasio.IdUsuarioInicioSeccion = Convert.ToInt32(Session["idUSuario"]);
                    ddl_Sucursal.DataTextField = "NOMBRE_CENTRO";
                    ddl_Sucursal.DataValueField = "ID_GIMNASIO";
                    ddl_Sucursal.DataSource = _servicio.Listar(3, _gimnasio).Tables[0];
                    ddl_Sucursal.DataBind();

                    _carreraempleado.IdUsuarioInicioSeccion = Convert.ToInt32(Session["idUSuario"]);
                    ddl_Profesional.DataTextField = "DESCRIPCION";
                    ddl_Profesional.DataValueField = "ID_CARRERA_PROFESIONAL";
                    ddl_Profesional.DataSource = _servicio.Listar(3, _carreraempleado).Tables[0];
                    ddl_Profesional.DataBind();

                    if (_empleado == null ? false : true)
                    {
                        txt_Codigo.Text = _empleado.IdEmpleado.ToString();
                        txt_Nombre.Text = _empleado.Nombre;
                        txt_Apellidos.Text = _empleado.Apellido;
                        txt_Cedula.Text = _empleado.Cedula;
                        txt_Direccion.Text = _empleado.Direccion;
                        txt_Email.Text = _empleado.Correo;
                        txt_FecIng.Text = _empleado.FechaIngreso.ToShortDateString();
                        if (_empleado.IdEstado == 2)
                            chk_Activo.Checked = true;
                        else
                            chk_Inactivo.Checked = true;
                        txt_Celular.Text = _empleado.TelefonoCelular.ToString();
                        txt_Habitacion.Text = _empleado.TelefonoCasa.ToString();
                        ddl_Departamento.SelectedValue = _empleado.IdDepartamento.ToString();
                        ddl_Profesional.SelectedValue = _empleado.IdCarreraProfesional.ToString();
                        ddl_Sucursal.SelectedValue = _empleado.IdGimnasio.ToString();
                        ddl_TipoEmpleado.SelectedValue = _empleado.IdTipoEmpleado.ToString();
                        ddl_Calendario.SelectedIndex = _empleado.IdCalendarioLaboral - 1;
                    }
                }
            }
            catch (Exception ex)
            {
                string script = @"<script type='text/javascript'> smoke.alert('" + ex.Message + "', function (e) {}, {ok: 'OK',classname: 'custom-class'}); </script>";
                ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false);
            }
        }

        #endregion

        protected void chk_Activo_CheckedChanged(object sender, EventArgs e)
        {
            if (chk_Activo.Checked == true)
                chk_Inactivo.Checked = false;
        }

        protected void chk_Inactivo_CheckedChanged(object sender, EventArgs e)
        {
            if (chk_Inactivo.Checked == true)
                chk_Activo.Checked = false;
        }

        protected void imgbtn_Agregar_Click(object sender, ImageClickEventArgs e)
        {
            try
            {
                string rtn = "";
                _empleado.IdUsuarioInicioSeccion = Convert.ToInt32(Session["idUSuario"]);
                _empleado.Nombre = txt_Nombre.Text;
                _empleado.Apellido = txt_Apellidos.Text;
                _empleado.Cedula = txt_Cedula.Text;
                _empleado.Direccion = txt_Direccion.Text;
                _empleado.Correo = txt_Email.Text;
                _empleado.FechaIngreso = Convert.ToDateTime(Request.Form[txt_FecIng.UniqueID]);
                _empleado.IdEstado = chk_Activo.Checked == true ? 6 : 5;
                _empleado.TelefonoCelular = Convert.ToInt32(txt_Celular.Text);
                _empleado.TelefonoCasa = Convert.ToInt32(txt_Habitacion.Text);
                _empleado.IdDepartamento = Convert.ToInt32(ddl_Departamento.SelectedValue);
                _empleado.IdCarreraProfesional = Convert.ToInt32(ddl_Profesional.SelectedValue);
                _empleado.IdGimnasio = Convert.ToInt32(ddl_Sucursal.SelectedValue);
                _empleado.IdTipoEmpleado = Convert.ToInt32(ddl_TipoEmpleado.SelectedValue);
                _empleado.IdCalendarioLaboral = Convert.ToInt32(ddl_Calendario.SelectedIndex + 1);
                _empleado.FechaLiquidacion = _empleado.FechaIngreso;

                if (txt_Codigo.Text == "")
                {
                    _servicio.InsertarActualizarRegistro(true, ref rtn, _empleado);
                    Response.Redirect("wbfrm_Mantenimiento_Empleados.aspx", false);
                }
                else
                {
                    _empleado.IdEmpleado = Convert.ToInt32(txt_Codigo.Text);
                    _servicio.InsertarActualizarRegistro(false, ref rtn, _empleado);
                    Response.Redirect("wbfrm_Mantenimiento_Empleados.aspx", false);
                }
            }
            catch (Exception ex)
            {
                string script = @"<script type='text/javascript'> smoke.alert('" + ex.Message + "', function (e) {}, {ok: 'OK',classname: 'custom-class'}); </script>";
                ScriptManager.RegisterStartupScript(this, typeof(Page), "alerta", script, false);
            }
            finally
            {
                _servicio.Close();
            }
        }
    }
}